package cc.rengu.igas.momp.common.dao;

import cc.rengu.igas.momp.common.entity.TMStatRefund;

/**
 * 退货统计表数据库操作接口定义
 *
 * @author Jinan Liu
 * @version 1.0.0
 * @date 2020/4/27 11:04
 */
public interface TMStatRefundMapper {

    /**
     * 获取退货统计表单条数据数据库操作接口定义
     *
     * @param instId    法人机构号
     * @param transDate 交易日期
     * @param traceNo   前端流水号
     * @param mchntNo   商户号
     * @return cc.rengu.igas.momp.common.entity.TMStatRefund 退货统计表数据库实体类
     * @throws Exception 异常信息
     * @author Jinan Liu
     * @date 2020/4/27 11:26
     */
    TMStatRefund selectSingleRecordFromTMStatRefund(String instId, String transDate, String traceNo, String mchntNo) throws Exception;

    /**
     * 增量更新退货统计表单条数据数据库操作接口定义
     *
     * @param tmStatRefund 退货统计表数据库实体类
     * @return int 返回码
     * @throws Exception 异常信息
     * @author Jinan Liu
     * @date 2020/4/27 11:15
     */
    int updateSingleRecordFromTmStatRefund(TMStatRefund tmStatRefund) throws Exception;

    /**
     * 新增退货统计表单条数据数据库操作接口定义
     *
     * @param tmStatRefund 退货统计表数据库实体类
     * @return int 返回码
     * @throws Exception 异常信息
     * @author Jinan Liu
     * @date 2020/6/11 23:52
     */
    int insertSingleRecordFromTmStatRefund(TMStatRefund tmStatRefund) throws Exception;

    /**
     * 直接更新退货统计表单条数据数据库操作接口定义
     *
     * @param tmStatRefund 退货统计表数据库实体类
     * @return int 返回码
     * @throws Exception 异常信息
     * @author Jinan Liu
     * @date 2020/6/19 11:05
     */
    int updateSingleRecordFromTmStatRefundDirectly(TMStatRefund tmStatRefund) throws Exception;

}
